<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>读尽天下源码，心中自然无码</title>
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
    <meta
      name="keywords"
      content="doc,docs,doocs,documentation,github,gitee,source-code-hunter,AmyliaY"
    />
    <meta name="description" content="读尽天下源码，心中自然无码——源码猎人" />
    <meta
      name="viewport"
      content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"
    />
    <link
      rel="stylesheet"
      href="https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/npm/docsify/lib/themes/vue.css"
    />
    <link
      rel="stylesheet"
      href="https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/npm/docsify-darklight-theme@latest/dist/style.min.css"
    />
    <link
      rel="icon"
      type="image/png"
      sizes="32x32"
      href="images/favicon-32x32.png"
    />
    <link
      rel="icon"
      type="image/png"
      sizes="16x16"
      href="images/favicon-16x16.png"
    />
    <style>
      .markdown-section code {
        font-weight: 400;
      }
    </style>
  </head>

  <body>
    <nav>
      <ul>
        <li>
          分类
          <ul>
            <li><a href="#/?id=spring-系列">Spring系列</a></li>
            <li><a href="#/?id=mybatis">Mybatis</a></li>
            <li><a href="#/?id=netty">Netty</a></li>
            <li><a href="#/?id=tomcat">Tomcat</a></li>
            <li><a href="#/?id=番外篇（jdk-18）">JDK 1.8</a></li>
            <li><a href="#/?id=学习心得">学习心得</a></li>
          </ul>
        </li>
        <li>
          页面
          <ul>
            <li><a href="#/README">首页</a></li>
            <li>
              <a href="https://github.com/doocs" target="_blank">Doocs</a>
            </li>
            <li>
              <a href="https://github.com/AmyliaY" target="_blank">Author</a>
            </li>
          </ul>
        </li>
      </ul>
    </nav>
    <div id="app">本系列知识由 Doocs 开源社区总结发布</div>
    <script>
      window.$docsify = {
        name: 'source-code-hunter',
        maxLevel: 3,
        auto2top: true,
        search: ['/'],
        darklightTheme: {
          defaultTheme: 'light',
          siteFont: 'Source Sans Pro,Helvetica Neue,Arial,sans-serif',
          codeFontFamily: 'Roboto Mono, Monaco, courier, monospace',
          bodyFontSize: '15px',
          dark: {
            background: '#191919',
            highlightColor: '#e96900',
            codeBackgroundColor: '#202020',
            codeTextColor: '#b4b4b4',
          },
          light: {
            highlightColor: '#e96900',
          },
        },
        contributors: {
          repo: 'doocs/source-code-hunter',
          ignores: ['/README.md'],
          image: {
            margin: '0.2em',
            isRound: true,
          },
        },
        plugins: [
          function (hook, vm) {
            hook.beforeEach(function (content) {
              const en = vm.route.file.indexOf('README_EN') > -1;
              if (/githubusercontent\.com/.test(vm.route.file)) {
                url = vm.route.file
                  .replace('raw.githubusercontent.com', 'github.com')
                  .replace(/\/main/, '/blob/main');
              } else {
                url =
                  'https://github.com/doocs/source-code-hunter/blob/main/' +
                  vm.route.file;
              }

              const github = `[GitHub](${url})`;
              const gitee = `[Gitee](${url.replace('github', 'gitee')})`;

              const editHtml = en
                ? `:memo: Edit on ${github} / ${gitee}\n`
                : `:memo: 在 ${github} / ${gitee} 编辑\n`;

              if (vm.route.path == '/') {
                return editHtml + content;
              }
              const subscription = `
## 公众号

[Doocs](https://github.com/doocs) 技术社区旗下唯一公众号「**Doocs开源社区**」​，欢迎扫码关注，**专注分享技术领域相关知识及业内最新资讯**。当然，也可以加我个人微信（备注：GitHub），拉你进技术交流群。

关注「**Doocs**」公众号，回复 **PDF**，即可获取 [互联网 Java 工程师进阶知识完全扫盲](https://github.com/doocs/advanced-java) 项目离线 PDF 文档（283 页精华），学习更加方便！

<table>
  <tr>
    <td align="center" style="width: 260px;">
      <img src="https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/gh/doocs/images/qrcode-for-doocs.png" style="width: 400px;"><br>
    </td>
    <td align="center" style="width: 260px;">
      <img src="https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/gh/doocs/images/qrcode-for-yanglbme.png" style="width: 400px;"><br>
    </td>
  </tr>
</table>
            `;
              return editHtml + content + `\n` + subscription;
            });

            hook.afterEach(function (html) {
              const currentYear = new Date().getFullYear();
              const footer = `<footer><span>Copyright © 2018-${currentYear} <a href="https://github.com/doocs" target="_blank">Doocs</a>. All Rights Reserved.</footer>`;
              return html + footer;
            });
          },
        ],
      };
    </script>
    <script src="https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/npm/docsify/lib/docsify.min.js"></script>
    <script src="https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/npm/prismjs/components/prism-c.min.js"></script>
    <script src="https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/npm/prismjs/components/prism-bash.min.js"></script>
    <script src="https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/npm/prismjs/components/prism-cpp.min.js"></script>
    <script src="https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/npm/prismjs/components/prism-json.min.js"></script>
    <script src="https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/npm/prismjs/components/prism-java.min.js"></script>
    <script src="https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/npm/prismjs/components/prism-python.min.js"></script>
    <script src="https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/npm/docsify-copy-code@2.1.1/dist/docsify-copy-code.min.js"></script>
    <script src="https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/npm/docsify/lib/plugins/search.min.js"></script>
    <script src="https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/npm/docsify/lib/plugins/zoom-image.min.js"></script>
    <script src="https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/npm/docsify-darklight-theme@latest/dist/index.min.js"></script>
    <script src="https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/npm/docsify-contributors@latest/dist/index.min.js"></script>
  </body>

  <!-- 
cdn.jsdelivr.net
test1.jsdelivr.net
testingcf.jsdelivr.net
fastly.jsdelivr.net
gcore.jsdelivr.net
 -->
</html>
